package com.greate.community.entity;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import java.util.Date;

/**
 * 消息实体类
 * 用于存储用户之间的私信和系统通知信息
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Message {

    /**
     * 消息ID
     */
    private int id;
    
    /**
     * 发送者ID
     * 如果是系统通知，值为0
     */
    private int fromId;
    
    /**
     * 接收者ID
     */
    private int toId;
    
    /**
     * 会话ID
     * 由两个用户ID组成，格式为：较小的ID_较大的ID
     */
    private String conversationId;
    
    /**
     * 消息内容
     */
    private String content;
    
    /**
     * 消息状态
     * 0-未读，1-已读，2-删除
     */
    private int status;
    
    /**
     * 消息创建时间
     */
    private Date createTime;

    @Override
    public String toString() {
        return "Message{" +
                "id=" + id +
                ", fromId=" + fromId +
                ", toId=" + toId +
                ", conversationId='" + conversationId + '\'' +
                ", content='" + content + '\'' +
                ", status=" + status +
                ", createTime=" + createTime +
                '}';
    }
}
